package com.mall.project.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.mall.project.sys.model.entity.Role;
import com.mall.project.sys.model.parm.RolePARM;

import java.util.List;

/**
 * <p>
 * 角色表 服务类
 * </p>
 *
 * @author Sam
 * @since 2021-04-13
 */
public interface IRoleService extends IService<Role> {

    /**
     * 新增角色
     *
     * @param rolePARM
     */
    void createRole(RolePARM rolePARM);

    /**
     * 修改角色
     *
     * @param rolePARM
     */
    void updateRole(RolePARM rolePARM);

    /**
     * 删除角色
     *
     * @param roleId
     */
    void delRole(String roleId);

    /**
     * 分配权限 包含删除原权限
     *
     * @param roleId
     * @param menuIdList
     */
    void assign(String roleId, List<String> menuIdList);

    /**
     * 分配权限
     *
     * @param roleId
     * @param menuIdList
     */
    void assignRole(String roleId, List<String> menuIdList);

    /**
     * 删除角色权限
     *
     * @param roleId
     */
    void delRoleMenu(String roleId);
}
